package com.liang.cloud.Service;

import com.liang.cloud.Dto.CartDTO;
import com.liang.cloud.Entity.ProductInfo;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * @author: 余亮亮
 * @description:
 * @create: 2020年1月4日15:37:10
 **/
public interface ProductInfoService {

    /**
     * 寻找某个商品（顾客）
     * @param productId
     * @return
     */
    public ProductInfo findOne(String productId);

    /**
     * 寻找所有上架商品（顾客）
     * @return
     */
    public List<ProductInfo> findUp();

    /**
     * 寻找商品所有（商户用）
     * @return
     */
    public Page<ProductInfo> findAll(Pageable pageable);

    /**
     * 修改增
     * @return
     */
    public ProductInfo save(ProductInfo productInfo);

    /**
     * 加库存
     */
    public void addStore(List<CartDTO> list);

    /**
     * 减库存
     */
    public void decreaseStore(List<CartDTO> list);

    /**
     * 上架
     * @param productId
     * @return
     */
    ProductInfo upSale(String productId);

    /**
     * 下架
     * @param productId
     * @return
     */
    ProductInfo downSale(String productId);
}
